<?php

include(FILE_DB_STATREGIOBEDRIJF);

class DbStatRegio extends DbStatStatistiekData {

    public $regioBedrijfLijst = array(); //Array met regioBedrijf objecten
    private $regioID; //int

    /**
     * constructor
     * @param int $beginFilterPeriodeMaand de maand vanaf wanneer gefilterd moet worden
     * @param int $beginFilterPeriodeJaar de jaar vanaf wanneer gefilterd moet worden
     * @param int $eindFilterPeriodeMaand de maand tot wanneer gefilterd moet worden
     * @param int $eindFilterPeriodeJaar de jaar tot wanneer gefilterd moet worden
     * @since Version 1.0
     */

    public function __construct($beginFilterPeriodeMaand, $beginFilterPeriodeJaar, $eindFilterPeriodeMaand, $eindFilterPeriodeJaar, $regioID, $naam, $formulierType) {
        parent::__construct();
        $this->setRegioID($regioID);
        $this->setNaam($naam);
        $this->setFormulierType($formulierType);
        $this->setBeginFilterPeriodeMaand($beginFilterPeriodeMaand);
        $this->setBeginFilterPeriodeJaar($beginFilterPeriodeJaar);
        $this->setEindFilterPeriodeMaand($eindFilterPeriodeMaand);
        $this->setEindFilterPeriodeJaar($eindFilterPeriodeJaar);
        $this->vulRegioBedrijfLijst(); //vult de regioBedrijfLijst met DbStatRegioBedrijf objecten.
    }

    /**
     * pakt 1 specifieke regioBedrijf uit de regioBedrijflijst op basis van de ingegeven naam
     * @param String $naam de naam van de regioBedrijf die je wilt hebben
     * @uses DbStatRegioBedrijf.php
     * @return void
     */
    public function getSpecifiekeRegioBedrijf($naam) {
        $regioBedrijf = $this->regioBedrijfLijst;

        $maxloop = count($regioBedrijf);
        for ($nummer = 0; $nummer < $maxloop; $nummer++) {
            if ($regioBedrijf[$nummer]->getNaam() == $naam) {
                return $regioBedrijf[$nummer];
            }
        }
    }

    /**
     * vult de regioBedrijflijst met DbStatRegioBedrijf objecten, en geeft ze de benodigde gegevens mee.
     * @name vulRegioBedrijfLijst
     * @uses DbStatRegioBedrijf.php
     * @since Version 1.0
     * @return void
     */
    protected function vulRegioBedrijfLijst() {

        $query = "SELECT DISTINCT bedrijf_id, naam FROM regiobedrijf WHERE regio_regio_id = " . $this->getRegioID();
        if (isset($_POST['advsort'])) {
            if ($_POST['advsort'] == 'regioBedrijf') {
                $query .=" AND naam=" . $_POST['sortData'];
            }
        }

        if (!$this->dbQuery($query)) {
            echo(STAT_ERROR_REGIOBEDRIJF_VULFOUT);
        }
        $regioBedrijf = $this->dbFetchAll();

        $maxloop = count($regioBedrijf);
        for ($loop = 0; $loop < $maxloop; $loop++) { //1 regioBedrijf
            $this->regioBedrijfLijst[$loop] = new DbStatRegioBedrijf($this->beginFilterPeriodeMaand, $this->beginFilterPeriodeJaar, $this->eindFilterPeriodeMaand, $this->eindFilterPeriodeJaar, $regioBedrijf[$loop]['bedrijf_id'], $regioBedrijf[$loop]['naam'], $this->getFormulierType());
        }
    }

    public function getRegioBedrijfLijst() {
        return $this->regioBedrijfLijst;
    }

    public function getRegioID() {
        return $this->regioID;
    }

    public function setRegioID($regioID) {
        $this->regioID = $regioID;
    }

}

?>
